package prictice.hbase.state;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

/**
 * @Package prictice.hbase.state
 * @Description:
 * @Author elwyn
 * @Date 2017/9/21 22:36
 * @Email elonyong@163.com
 */
public class TupleTableConfig implements Serializable {

    private static final long serialVersionUID = 9006377340582135394L;
    private String tableName;
    protected String tupleRowKeyField;
    protected String tupleTimestampField;
    protected Map<String, Set<String>> columFamilies;

    public TupleTableConfig(final String tableName, final String tupleRowKeyField) {
        this.tableName = tableName;
        this.tupleRowKeyField = tupleRowKeyField;
        this.tupleTimestampField = "";
        this.columFamilies = new HashMap<>();
    }

    public TupleTableConfig(String tableName, String tupleRowKeyField, String tupleTimestampField) {
        this.tableName = tableName;
        this.tupleRowKeyField = tupleRowKeyField;
        this.tupleTimestampField = tupleTimestampField;
    }

    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getTupleRowKeyField() {
        return tupleRowKeyField;
    }

    public void setTupleRowKeyField(String tupleRowKeyField) {
        this.tupleRowKeyField = tupleRowKeyField;
    }

    public String getTupleTimestampField() {
        return tupleTimestampField;
    }

    public void setTupleTimestampField(String tupleTimestampField) {
        this.tupleTimestampField = tupleTimestampField;
    }

    public Map<String, Set<String>> getColumFamilies() {
        return columFamilies;
    }

    public void setColumFamilies(Map<String, Set<String>> columFamilies) {
        this.columFamilies = columFamilies;
    }
}
